package com.ruoyi.redtea.dualprevent.service;

import com.ruoyi.common.core.domain.PageQuery;
import com.ruoyi.redtea.dualprevent.domain.entity.TrainRegion;
import com.ruoyi.redtea.dualprevent.domain.vo.TrainFourColorVo;
import com.ruoyi.redtea.dualprevent.domain.vo.TrainRegionVo;
import org.springframework.data.domain.Page;
import org.springframework.data.domain.PageRequest;

import java.util.List;

/**
 * 区域表(TrainRegion)表服务接口
 *
 * @author makejava
 * @since 2024-05-13 14:37:27
 */
public interface TrainRegionService{

    /**
     * 通过ID查询单条数据
     *
     * @param id 主键
     * @return 实例对象
     */
    TrainRegionVo queryById(Integer id);

    /**
     * 分页查询
     *
     * @param trainRegion 筛选条件
     * @param pageRequest      分页对象
     * @return 查询结果
     */
    Page<TrainRegionVo> queryByPage(TrainRegion trainRegion, PageRequest pageRequest);
    List<TrainRegionVo> queryPageList(PageQuery pageQuery);
    List<TrainRegionVo> queryList();

    /**
     * 新增数据
     *
     * @param trainRegion 实例对象
     * @return 实例对象
     */
    boolean insert(TrainRegion trainRegion);

    /**
     * 修改数据
     *
     * @param trainRegion 实例对象
     * @return 实例对象
     */
    boolean update(TrainRegion trainRegion);

    /**
     * 通过主键删除数据
     *
     * @param ids 主键
     * @return 是否成功
     */
    boolean deleteByIds(List<Long> ids);

    /**
     * 查询风险四色图
     * @return
     */
    List<TrainFourColorVo> queryFour();

}
